package com.sunfeng.chap2.p13;

import java.io.IOException;
import java.io.RandomAccessFile;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
import java.nio.charset.StandardCharsets;

/**
 * @Author : 孙峰
 * @Description:  先运行 test13_7 在运行 本测试
 * 会抛出如下异常信息 Exception in thread "main" java.io.IOException: 另一个程序已锁定文件的一部分，进程无法访问。
 *       说明共享锁 自己和别人都不可以写
 * @Date : 2021/10/9  16:40
 */
public class Test13_8 {
    private  static RandomAccessFile randomAccessFile;

    private static FileChannel fileChannel;

    public static void main(String[] args) throws IOException, InterruptedException {
        randomAccessFile=new RandomAccessFile("d:\\nio\\a.txt","rw");
        fileChannel=randomAccessFile.getChannel();
        fileChannel.lock(1,2,true);
        fileChannel.write(ByteBuffer.wrap("123456".getBytes(StandardCharsets.UTF_8)));
    }
}
